Skip to content

feat(testimonials): redesign the /testimonials/ index page - #196

Merged
Gowiem merged 3 commits into
mainfrom
claude/testimonials-page-redesign-8d9726
Nov 3, 2026
Merged

Gowiem merged 3 commits into
mainfrom
claude/testimonials-page-redesign-8d9726

Conversation

@Gowiem

@Gowiem Gowiem commented Nov 2, 2026 •

Copy link
Copy Markdown
Member

what

  • /testimonials/ gets its own layout: a glow banner ("Don't take our word for it", over the homepage "our word" art), then a two-column grid of quote cards (one column on mobile). Each card shows the company logo, the quote with its bolded phrases brightened, the person's headshot, name and title, and a "Read the X case study" link when case_study is set.
  • The cards read the same front matter as the homepage slider, including the logo_height / logo_max_width / logo_full_color overrides.
  • The six per-person pages (e.g. /testimonials/adam-pallin/) are no longer rendered. They're set to build.render: never through a cascade in the new content/testimonials/_index.md. They still appear in page collections, so the homepage slider is unchanged (still six slides).
  • netlify.toml gets one forced 301 per old per-person URL (/testimonials/<slug>/ → /testimonials/). A non-forced /testimonials/* splat never fired on the deploy preview (the old URLs returned 404), and a forced splat would also match /testimonials/ itself and loop.
  • The section's RSS feed is turned off (outputs: [HTML]). Its items would have had no links and year-0001 dates.
  • Added weight (the CMS "Order" field) to each testimonial so the page leads with Cursor and pairs quotes of similar length per row. The slider shuffles client-side, so its order doesn't change.
  • hire-glow-banner in careers.scss now takes an optional $image argument (default unchanged), so the testimonials banner can reuse it.
  • Also in this PR (unrelated to testimonials): the pricing FAQ (content/faqs/4-prices.md, rendered on /services/) now lists the minimum project size as $100k, up from $80k. It's the only place the site states the minimum. The $15k audit/workshop starting price is unchanged.

why

  • A colleague found /testimonials/ rendering badly. With no section layout it fell back to the generic blog list template, so every testimonial showed as a broken post card: "Published: 1.01.0001", a missing image, an empty description and "Read More". The per-person pages were broken the same way.
  • Nothing on the site links to /testimonials/. It and all six per-person pages are in sitemap.xml, which is how people (and search engines) find them. It should look right when someone lands there.
  • A single quote is too thin to justify its own page, so the per-person pages are redirected to the index instead of redesigned.
  • Raising the minimum engagement size to $100k.

reviewer notes

  • Check the deploy preview: /testimonials/ at desktop and mobile, plus one old URL such as /testimonials/adam-pallin/ to confirm the 301 (Netlify redirects can't be tested locally).
  • Local checks: production build (Hugo 0.162.1) has no warnings, the sitemap lists only /testimonials/, no per-person pages are emitted, there's no horizontal scroll at 375px, and trunk check passes.
  • Four quotes are wrapped in quotation marks in their markdown and two aren't. The card strips the wrapping pair because it draws its own opening quote mark. The content files and the slider are untouched.
  • Gunter Pfau's headshot is a wide shot with a large "Stuzo" wall sign behind him, so the text competes with his face at avatar size, here and in the slider. A tighter crop of static/img/testimonials/gunter-pfau.jpg would fix both; it's not in this PR.

references

🤖 Generated with Claude Code

The section had no layout of its own, so it fell back to the generic
blog list template and rendered every testimonial as a broken post card
("Published: 1.01.0001", a missing image, an empty summary). Nothing
links to the page, but it and the six per-person pages are in the
sitemap, which is how people were finding it.

- Add a testimonials list layout and card partial: glow banner, then a
  two-column grid of quote cards (logo, quote, headshot, name/title,
  optional case-study link) reading the same front matter as the
  homepage slider, logo size/color overrides included.
- Stop rendering the per-person pages (thin, single-quote pages) via a
  section cascade. They stay in page collections, so the slider is
  unchanged. Redirect their old URLs to /testimonials/ and drop the
  section's RSS feed, whose items would have no links or dates.
- Add weights so the list leads with the strongest quotes and pairs
  similar lengths per row. The slider shuffles client-side, so its
  order is unaffected.
- Let the careers glow-banner mixin take a background image so the
  testimonials banner can reuse it with the homepage "our word" art.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Gowiem
Gowiem requested a review from a team as a code owner November 2, 2026 21:33
@netlify

netlify Bot commented Nov 2, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for masterpoint ready!

Name Link
🔨 Latest commit fda92cf
🔍 Latest deploy log https://app.netlify.com/projects/masterpoint/deploys/6ae9157c665877fc8bf1478e
😎 Deploy Preview https://deploy-preview-196--masterpoint.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 33
Accessibility: 89
Best Practices: 83
SEO: 81
PWA: 70
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify project configuration.

@coderabbitai

coderabbitai Bot commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

Important

  • Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 9cff6615-dd64-42e9-9c42-532a02c5aba9
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

oycyc
oycyc previously approved these changes Nov 2, 2026
…URLs

On the deploy preview the non-forced /testimonials/* splat never fired:
the old per-person URLs returned 404 while every forced rule in the file
redirected correctly. Replace it with one forced 301 per old page. Each
matches with or without the trailing slash, and none can match
/testimonials/ itself, so there's no loop.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
oycyc
oycyc previously approved these changes Nov 2, 2026
The pricing FAQ (rendered on /services/) is the only place the site
states the minimum engagement size. The $15k audit/workshop starting
price is unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Gowiem
Gowiem enabled auto-merge (squash) November 2, 2026 22:58
@Gowiem
Gowiem requested a review from oycyc November 2, 2026 22:58
@Gowiem
Gowiem merged commit c2b932a into main Nov 3, 2026
8 checks passed
@Gowiem
Gowiem deleted the claude/testimonials-page-redesign-8d9726 branch November 3, 2026 00:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants